negotiator.boaframework.offeringstrategy.anac2011
Class IAMhaggler2011_Offering

java.lang.Object
  extended by negotiator.boaframework.OfferingStrategy
      extended by negotiator.boaframework.offeringstrategy.anac2011.IAMhaggler2011_Offering

public class IAMhaggler2011_Offering
extends OfferingStrategy

This is the decoupled Offering Strategy for IAMhaggler2011 (ANAC2011). The code was taken from the ANAC2011 IAMhaggler2011 and adapted to work within the BOA framework. The default opponent model implementation selects the best bid for the opponent. DEFAULT OM: None Decoupling Negotiating Agents to Explore the Space of Negotiation Strategies T. Baarslag, K. Hindriks, M. Hendrikx, A. Dirkzwager, C.M. Jonker

Author:
Mark Hendrikx

Field Summary
protected  double acceptMultiplier
           
protected  RandomBidCreator bidCreator
           
protected  double MAXIMUM_ASPIRATION
           
protected  double RISK_PARAMETER
           
 
Fields inherited from class negotiator.boaframework.OfferingStrategy
endNegotiation, helper, negotiationSession, nextBid, omStrategy, opponentModel
 
Constructor Summary
IAMhaggler2011_Offering()
          Empty constructor for the BOA framework.
 
Method Summary
 Bid chooseAction()
           
 BidDetails determineNextBid()
          Determines the next bid the agent will offer to the opponent
 BidDetails determineOpeningBid()
          Determines the first bid to be offered by the agent
protected  Jama.Matrix generateRiskFunction(double riskParameter)
          Generate an n-by-m matrix representing the risk based utility for a given utility-time combination.
protected  double generateRiskFunction(double riskParameter, double utility)
          Generate the risk based utility for a given actual utility.
protected  double getTarget(double opponentUtility, double time)
          Get the target at a given time, recording the opponent's utility.
static java.lang.String getVersion()
          Gets the version number.
 void init(NegotiationSession negotiationSession, OpponentModel opponentModel, OMStrategy omStrategy, java.util.HashMap<java.lang.String,java.lang.Double> parameters)
          Initializes the offering strategy.
protected  Bid proposeInitialBid()
           
protected  Bid proposeNextBid(Bid opponentBid)
           
 
Methods inherited from class negotiator.boaframework.OfferingStrategy
endSession, getHelper, getNextBid, isEndNegotiation, loadData, setNextBid, storeData
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

RISK_PARAMETER

protected double RISK_PARAMETER

bidCreator

protected RandomBidCreator bidCreator

MAXIMUM_ASPIRATION

protected double MAXIMUM_ASPIRATION

acceptMultiplier

protected double acceptMultiplier
Constructor Detail

IAMhaggler2011_Offering

public IAMhaggler2011_Offering()
Empty constructor for the BOA framework.

Method Detail

init

public void init(NegotiationSession negotiationSession,
                 OpponentModel opponentModel,
                 OMStrategy omStrategy,
                 java.util.HashMap<java.lang.String,java.lang.Double> parameters)
          throws java.lang.Exception
Description copied from class: OfferingStrategy
Initializes the offering strategy. If parameters are used, this method should be overridden.

Overrides:
init in class OfferingStrategy
Parameters:
negotiationSession - state of the negotiation.
opponentModel - opponent model which may be used.
omStrategy - opponent model strategy which may be used.
parameters - optional parameters for the offering strategy.
Throws:
java.lang.Exception - if the offering strategy fails to initialize.

proposeInitialBid

protected Bid proposeInitialBid()
                         throws java.lang.Exception
Throws:
java.lang.Exception

proposeNextBid

protected Bid proposeNextBid(Bid opponentBid)
                      throws java.lang.Exception
Throws:
java.lang.Exception

getTarget

protected double getTarget(double opponentUtility,
                           double time)
Get the target at a given time, recording the opponent's utility.

Parameters:
opponentUtility - The utility of the most recent offer made by the opponent.
time - The current time.
Returns:
the target.

generateRiskFunction

protected Jama.Matrix generateRiskFunction(double riskParameter)
Generate an n-by-m matrix representing the risk based utility for a given utility-time combination. The combinations are given by the time and utility samples stored in timeSamples and utilitySamples

Parameters:
riskParameter - The risk parameter.
Returns:
an n-by-m matrix representing the risk based utility.

generateRiskFunction

protected double generateRiskFunction(double riskParameter,
                                      double utility)
Generate the risk based utility for a given actual utility.

Parameters:
riskParameter - The risk parameter.
utility - The actual utility to calculate the risk based utility from.
Returns:
the risk based utility.

getVersion

public static java.lang.String getVersion()
Gets the version number.

Returns:
the version number.

determineOpeningBid

public BidDetails determineOpeningBid()
Description copied from class: OfferingStrategy
Determines the first bid to be offered by the agent

Specified by:
determineOpeningBid in class OfferingStrategy
Returns:
the opening bid of the agent.

determineNextBid

public BidDetails determineNextBid()
Description copied from class: OfferingStrategy
Determines the next bid the agent will offer to the opponent

Specified by:
determineNextBid in class OfferingStrategy
Returns:
bid to offer to the opponent.

chooseAction

public Bid chooseAction()